﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ServiceModel;
using CyclicReferences.Public;
using Domain;

namespace Interface
{
    [CircularReferenceSurrogateAttribute]
    [ServiceContract(Namespace="Http://sitechno.School")]
    public interface ISchoolService
    {
        [OperationContract]
        Person GetPerson(int id, bool fetchEnrollments, bool fetchCourses);

        [OperationContract]
        void SavePerson(Person person);

        [OperationContract]
        IList<Course> GetCourses();

        [OperationContract]
        IList<Department> GetDepartments();

    }
}
